namespace Brjnk.GpxExplorer.Workspace
{
    using System.ComponentModel;
    using System.Windows.Media;

    /// <summary>
    /// </summary>
    public class ClipboardSettings : INotifyPropertyChanged
    {
        private bool coordinatesAsk = true;

        public bool CoordinatesAsk
        {
            get { return coordinatesAsk; }
            set { coordinatesAsk = value; OnPropertyChanged("CoordinatesAsk"); }
        }

        private bool dateTimeAsk = true;

        public bool DateTimeAsk
        {
            get { return dateTimeAsk; }
            set { dateTimeAsk = value; OnPropertyChanged("DateTimeAsk"); }
        }

        private Color coordinatesSearchColor = Colors.Violet;

        public Color CoordinatesSearchColor
        {
            get { return coordinatesSearchColor; }
            set { coordinatesSearchColor = value; OnPropertyChanged("CoordinatesSearchColor"); }
        }

        private Color dateTimeSearchColor = Colors.Violet;

        public Color DateTimeSearchColor
        {
            get { return dateTimeSearchColor; }
            set { dateTimeSearchColor = value; OnPropertyChanged("DateTimeSearchColor"); }
        }

        private bool coordinatesSearch;

        public bool CoordinatesSearch
        {
            get { return coordinatesSearch; }
            set { coordinatesSearch = value; OnPropertyChanged("CoordinatesSearch"); }
        }

        private bool dateTimeSearch;

        public bool DateTimeSearch
        {
            get { return dateTimeSearch; }
            set { dateTimeSearch = value; OnPropertyChanged("DateTimeSearch"); }
        }

        private bool coordinatesCreateWaypoint;

        public bool CoordinatesCreateWaypoint
        {
            get { return coordinatesCreateWaypoint; }
            set { coordinatesCreateWaypoint = value; OnPropertyChanged("CoordinatesCreateWaypoint"); }
        }

        public event PropertyChangedEventHandler PropertyChanged;

        private void OnPropertyChanged(string propertyName)
        {
            if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
        }
    }
}